"""
storage 包初始化模块。

核心设计与优化说明：
- 明确导出各子模块的主接口，便于外部统一引用和 IDE 自动补全。
- 采用 __all__ 控制导出符号，防止未公开类/函数被误用，增强封装性。
- 保持各模块解耦，便于单元测试和维护。
- 便于未来扩展（如增加多种存储引擎、索引、压缩、事务等子模块）。
- 预留扩展点：可通过工厂模式或注册机制支持多种存储/缓存/索引/事务实现。
- 保持接口风格一致，便于系统集成和团队协作。
"""

from .page import PageManager
from .buffer import BufferPool
from .file_manager import FileManager

__all__ = [
    'PageManager',
    'BufferPool',
    'FileManager',
    # 'StorageEngine',   # FIXME: 若未实现 StorageEngine 抽象类，请移除或实现后再导出
    # 'IndexManager',    # 预留索引管理器
    # 'TransactionManager', # 预留事务管理器
    # 'Compressor',      # 预留压缩算法
]